1 Purpose

To extract and visualise tweets and re-tweets of #birdoftheyear OR #boty in September/October 2018.

Borrowing extensively from https://github.com/mkearney/rtweet

Th anaysis used rtweet to ask the Twitter search API to extract ‘all’ tweets containing the #birdoftheyear OR #boty hashtags in the ‘recent’ twitterVerse.

It is therefore possible that not quite all tweets have been extracted although it seems likely that we have captured most recent human tweeting which was the main intention. Future work should instead use the Twitter streaming API.

2 Load Data

Load the data (pre-collected using https://github.com/dataknut/hashTagR/blob/master/dataProcessing/getBoTY.R).

The data has:

3 Analysis

3.1 Tweets and Tweeters over time

Number of tweets and tweeters

Figure 3.1: Number of tweets and tweeters

Figure 3.1 shows the number of tweets and tweeters in the data extract by day. The quotes, tweets and re-tweets have been separated. Looks to me like there’s quite a lot of activity at weekends…

If you are in New Zealand and you are wondering why there are no tweets today (2018-10-01) the answer is that twitter data (and these plots) are working in UTC and (y)our today hasn’t started yet in UTC - but don’t worry, all the tweets are here. It’s just our old friend the timezone… :-)

3.2 Who’s tweeting?

Next we’ll try by screen name.

Figure 3.2: N tweets per day by screen name

Figure 3.2 is a really bad visualisation of all tweeters tweeting over time. Each row of pixels is a tweeter (the names are probably illegible) and a green dot indicates a few tweets in the given day while a red dot indicates a lot of tweets. We’ve used plotly::ggplotly() so you can hover over the data points but it’s still pretty messy.

So let’s re-do that for the top 50 tweeters so we can see their tweetStreaks (tm)…

Top tweeters:

Table 3.1: Top 15 tweeters (all days)
screen_name nTweets
birdoftheyear 609
Forest_and_Bird 185
testeeves 167
NatForsdick 162
coolbiRdpics 155
vote4kaki 152
mifflangstone 136
jackcraw57 106
thebushline 97
newzealandbirds 94
sgalla32 69
lpneumophila 66
hugobrown 65
zaichishka 64
kiwilullaby 64

And their tweetStreaks are shown in 3.3

N tweets per day minutes by screen name (top 50, reverse alphabetical)

Figure 3.3: N tweets per day minutes by screen name (top 50, reverse alphabetical)

Any twitterBots…?

3.3 Which birds are mentioned the most (by hashtag)

This is very quick and dirty but… Figure 3.4 plots the number of tweets for each concatenated hashtag string (non-separated hashtags) after removing tweets which have variants of #birdOfTheYear and #boty as the only hashtags and selecting the top 50. Tweets mentioning birds without using a #<birdName> hashtag will not show up; birds #mentioned in tweets with a lot of varying other #hashtags will be under-represented etc etc. This is a really imperfect measure of just about anything so #YMMV.

Top 50 hashtag strings

Figure 3.4: Top 50 hashtag strings

Table 3.2 shows a slightly more intelligible table of the same data summarised across all days to date. Note that this is not a true count of the mentions of a particular #hashtag - we would need to seperate the hashtags and then count unique hashtags for that. Work in progress…

Table 3.2: Number of tweets per hashtag string (sorted by nTweets)
hashtags nTweets
takayay 1103
gannet 107
Vote4Kakī|kakī 36
Pukeko|Kiwi|Australia 35
MenInBlack|BIB 30
birds|birdwatching 28
TeamKakī|kakī|genetic|genomic 24
takahey|votetakahē 24
kereru|kakī 23
voterowi 20
StanyAgaty|KłamaćJakMorawiecki|PiS|DośćKłamstw|Podpaski 19
littlepenguin 19
TeamKaki 17
DammitGannet 16
kotāre|kingfisher 16
TeamKakī 15
doadivebombbro|dammitgannet 15
TeamBlackPetrel 14
VoteRuru 12
dammitgannet|doadivebombbro 12
seabirds|albatross 12
DopestBirds 10
votetomtit|itsthetits 9
kakī 8
BrotherOfTheYear|TokyoInternationalFilmFestival2018|BrotherOfTheYearPH 7
evidence|conservation|kakī 6
Kakī 5
KŌTARE 5
StanyAgaty|KłamaćJakMorawiecki|PiS|DośćKłamstw 5
TeamKakī|dopest 5
votetakahē|makebirdsroundagain 5
BIB 4
Penguin 4
Vote4Kakī 4
makebirdsroundagain|manyshapesareround|livelaughtakahē|takayay|votetakahē 4
DidYouKnow|Travel|adventure 3
fallcolours|woodpecker|SundayFunday 3
kakī|BraidedRiver 3
BrotherOfTheYear|BrotherOfTheYearPH 2
KotaPrezesa 2
TeamTawaki 2
teamrockhopper 2
Kaczyński 1
animatethelivings|canlılarıcanlamdıralım|muslumtekin_ogr|petsofinstagram|pets|petstagram|petslovers|bird 1

4 About

Analysis completed in 6.64 seconds ( 0.11 minutes) using knitr in RStudio with R version 3.5.1 (2018-07-02) running on x86_64-apple-darwin15.6.0.

A special mention must go to https://github.com/mkearney/rtweet (Kearney 2018) for the twitter API interaction functions.

Other R packages used:

References

Dowle, M, A Srinivasan, T Short, S Lianoglou with contributions from R Saporta, and E Antonyan. 2015. Data.table: Extension of Data.frame. https://CRAN.R-project.org/package=data.table.

Kearney, Michael W. 2018. Rtweet: Collecting Twitter Data. https://cran.r-project.org/package=rtweet.

R Core Team. 2016. R: A Language and Environment for Statistical Computing. Vienna, Austria: R Foundation for Statistical Computing. https://www.R-project.org/.

Sievert, Carson, Chris Parmer, Toby Hocking, Scott Chamberlain, Karthik Ram, Marianne Corvellec, and Pedro Despouy. 2016. Plotly: Create Interactive Web Graphics via ’Plotly.js’. https://CRAN.R-project.org/package=plotly.

Wickham, Hadley. 2009. Ggplot2: Elegant Graphics for Data Analysis. Springer-Verlag New York. http://ggplot2.org.

Wickham, Hadley, Jim Hester, and Romain Francois. 2016. Readr: Read Tabular Data. https://CRAN.R-project.org/package=readr.

Xie, Yihui. 2016a. Bookdown: Authoring Books and Technical Documents with R Markdown. Boca Raton, Florida: Chapman; Hall/CRC. https://github.com/rstudio/bookdown.

———. 2016b. Knitr: A General-Purpose Package for Dynamic Report Generation in R. https://CRAN.R-project.org/package=knitr.